There are many problems that can arise when attempting to search a database. For example, some databases are so large that they cannot be stored entirely within the internal memory/Random Access Memory of a computer being used to perform the search. This means that the searching process has to select portions of the database to be retrieved from an external store in order to search. As transferring data from an external store to the internal memory will normally take more time than retrieving data within the internal memory for processing, frequently accessing data from the external memory can significantly reduce the speed of the overall searching process. It is therefore beneficial to reduce the amount of data transferred from external storage during a searching operation, ideally by only retrieving the data that is relevant to the current search.
Another problem that can arise is that at least part of the search request to be processed may not exactly match data that is stored in the database. For example, when the search request data is based on human speech then natural variations between different users' pronunciation of search terms can make it difficult to match the input with database records.
Embodiments of the system described herein are intended to address these problems.
organizedorganizedanalyzingorganizedanalyzinganalyzingorganized